/*
 * 文  件   名: FriendManager.java
 * 版         本 : docrepository-core(Anttribe). All rights reserved.
 * 描         述 : <描述>
 * 修   改  人: zhaoyong
 * 修改时间: 2014年11月16日
 */
package org.anttribe.docrepository.friend.manager;

import java.util.List;

import org.anttribe.docrepository.common.UnifyException;
import org.anttribe.docrepository.friend.domain.UserFriend;
import org.anttribe.docrepository.friend.domain.UserGroup;

/**
 * 用户好友处理manager
 * 
 * @author zhaoyong
 * @version 2014年11月16日
 */
public interface FriendManager
{
    /**
     * 根据用户id获取用户所有的群组
     * 
     * @param ownerId 拥有者id
     * @return List<UserGroup>
     * @throws UnifyException
     */
    List<UserGroup> listUserGroup(String ownerId)
        throws UnifyException;
    
    /**
     * 根据群组获取群组下的所有好友
     * 
     * @param groupId
     * @param ownerId
     * @return
     * @throws UnifyException
     */
    List<UserFriend> listUserFriend(String groupId, String ownerId)
        throws UnifyException;
    
    /**
     * 更改用户好友备注姓名
     * 
     * @param userFriendId 好友id
     * @param friendName 好友姓名
     */
    void editFriendName(String userFriendId, String friendName);
    
    /**
     * 删除好友
     * 
     * @param userFriendId 好友id
     */
    void removeUserFriend(String userFriendId);
}